GValue *value,
GParamSpec *pspec);
static void gtk_widget_dispose (GObject *object);
-static void gtk_widget_real_destroy (GtkWidget *object);
static void gtk_widget_finalize (GObject *object);
+static void gtk_widget_real_destroy (GtkWidget *object);
static void gtk_widget_real_show (GtkWidget *widget);
static void gtk_widget_real_hide (GtkWidget *widget);
static void gtk_widget_real_map (GtkWidget *widget);
gobject_class->set_property = gtk_widget_set_property;
gobject_class->get_property = gtk_widget_get_property;
- klass->destroy = gtk_widget_real_destroy;
-
klass->activate_signal = 0;
klass->show = gtk_widget_real_show;
klass->hide = gtk_widget_real_hide;
g_signal_new (I_("destroy"),
G_TYPE_FROM_CLASS (gobject_class),
G_SIGNAL_RUN_CLEANUP | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
- G_STRUCT_OFFSET (GtkWidgetClass, destroy),
+ 0,
NULL, NULL,
NULL,
G_TYPE_NONE, 0);
priv->in_destruction = TRUE;
g_signal_emit (object, widget_signals[DESTROY], 0);
priv->in_destruction = FALSE;
+ gtk_widget_real_destroy (widget);
}
sizegroups = _gtk_widget_get_sizegroups (widget);
* @activate_signal: The signal to emit when a widget of this class is
* activated, gtk_widget_activate() handles the emission.
* Implementation of this signal is optional.
- * @destroy: Signals that all holders of a reference to the widget
- * should release the reference that they hold.
* @show: Signal emitted when widget is shown
* @hide: Signal emitted when widget is hidden.
* @map: Signal emitted when widget is going to be mapped, that is
guint activate_signal;
/* basics */
- void (* destroy) (GtkWidget *widget);
void (* show) (GtkWidget *widget);
void (* hide) (GtkWidget *widget);
void (* map) (GtkWidget *widget);